C语言链表实现与应用
📚 共计 30 章节
01
链表概述
为什么需要链表 · 链表与数组对比 · 节点/头指针/尾节点
基础
概念
02
单向链表基础
结构定义 · 创建节点 · 遍历 · 查找节点
核心
遍历
03
单向链表插入操作
头插法 · 尾插法 · 指定位置插入
插入
操作
04
单向链表删除操作
删除头节点 · 尾节点 · 指定节点
删除
指针
05
修改与销毁
修改节点数据 · 销毁链表 · 内存泄漏防范
内存
安全
06
双向链表基础
结构定义 · 创建与遍历 · 与单向对比
双向
结构
07
双向链表插入与删除
头插尾插 · 指定位置插入与删除
插入
删除
08
循环链表
单向/双向循环 · 约瑟夫环问题
循环
经典
09
链表与递归
递归遍历 · 递归反转 · 递归优缺点
递归
思维
10
链表的排序
冒泡排序 · 插入排序 在链表上实现
排序
算法
11
合并与拆分
合并有序链表 · 拆分为奇偶两部分
合并
拆分
12
链表的反转
迭代反转 · 递归反转 · 局部反转
反转
高频
13
检测链表中的环
快慢指针 · 哈希表 · 环入口检测
环
快慢指针
14
链表相交问题
判断相交 · 第一个相交节点
相交
双指针
15
链表的中间节点
快慢指针法 · 计数法
中间
技巧
16
链表的回文判断
快慢指针+反转 · 数组辅助
回文
双指针
17
LRU缓存淘汰策略
双向链表+哈希表 LRU 实现
缓存
设计
18
链表的深拷贝
带随机指针的链表深拷贝
拷贝
指针
19
多项式加法与乘法
链表表示多项式 · 加法 · 乘法
数学
应用
20
大整数运算
链表表示大整数 · 加法 · 乘法
大数
运算
21
应用:任务调度 & 内存管理
就绪队列 · 空闲块链表
OS
调度
22
应用:邻接表 & 哈希链地址
图的邻接表 · 哈希表链地址法
图
哈希
23
应用:文件目录 & 浏览器进退
目录结构 · 前进后退功能
文件
浏览器
24
链表的性能分析
时间复杂度 · 空间复杂度 · 缓存友好性
性能
分析
25
链表的调试技巧
打印链表 · 断言 · Valgrind 检测
调试
工具
26
链表的常见错误
野指针 · 内存泄漏 · 死循环 · 断链
避坑
经验
27
跳表 Skip List
基本原理与实现
进阶
跳表
28
无锁链表简介
Lock-Free Linked List 并发思想
并发
无锁
29
内核链表设计思想
Linux Kernel Linked List 剖析
内核
Linux
30
综合实战:学生成绩管理系统
增删改查 + 排序 + 文件存储
项目
综合